.shop-container {
  min-height: 100vh;
  padding: 30rpx 20rpx;
  position: relative;
  background: linear-gradient(180deg, #f0f5ff 0%, #ffffff 30%);
  overflow: hidden;
}

.bg-decoration {
  position: absolute;
  top: -100rpx;
  right: -100rpx;
  width: 400rpx;
  height: 400rpx;
  background: linear-gradient(135deg, rgba(60,156,255,0.2) 0%, rgba(60,156,255,0.05) 100%);
  border-radius: 50%;
  z-index: 0;
  
  &::after {
    content: '';
    position: absolute;
    top: 50rpx;
    left: 50rpx;
    width: 200rpx;
    height: 200rpx;
    background: linear-gradient(135deg, rgba(60,156,255,0.15) 0%, rgba(60,156,255,0.02) 100%);
    border-radius: 50%;
  }
}

.stats-cards {
  position: relative;
  z-index: 1;
  display: flex;
  justify-content: space-between;
  padding: 20rpx 0;
  margin: 0 6rpx;
  gap: 20rpx;
  
  .stat-card {
    background: linear-gradient(135deg, #3c9cff 0%, #54a6ff 100%);
    border-radius: 20rpx;
    padding: 32rpx 16rpx;
    width: calc((100% - 40rpx) / 3);
    text-align: center;
    box-shadow: 0 8rpx 20rpx rgba(60,156,255,0.15);
    position: relative;
    overflow: hidden;
    transition: transform 0.3s ease;
    
    &::before {
      content: '';
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      background: linear-gradient(
        45deg,
        rgba(255, 255, 255, 0.1),
        rgba(255, 255, 255, 0.05)
      );
      z-index: 1;
    }
    
    &::after {
      content: '';
      position: absolute;
      width: 100rpx;
      height: 100rpx;
      background: linear-gradient(
        135deg,
        rgba(255, 255, 255, 0.12),
        rgba(255, 255, 255, 0.03)
      );
      border-radius: 50%;
      bottom: -50rpx;
      right: -50rpx;
      z-index: 1;
    }
    
    &:active {
      transform: translateY(2rpx);
    }
    
    .decoration {
      position: absolute;
      top: 8rpx;
      left: 8rpx;
      width: 32rpx;
      height: 32rpx;
      border-radius: 50%;
      background: rgba(255, 255, 255, 0.1);
      z-index: 1;
    }
    
    &:nth-child(1) {
      background: linear-gradient(135deg, #36BC9B 0%, #4ECDC4 100%);
      box-shadow: 0 8rpx 20rpx rgba(54,188,155,0.15);
    }
    
    &:nth-child(2) {
      background: linear-gradient(135deg, #5D9CEC 0%, #4A89DC 100%);
      box-shadow: 0 8rpx 20rpx rgba(93,156,236,0.15);
    }
    
    &:nth-child(3) {
      background: linear-gradient(135deg, #967ADC 0%, #8E44AD 100%);
      box-shadow: 0 8rpx 20rpx rgba(150,122,220,0.15);
    }
    
    .number {
      position: relative;
      z-index: 2;
      font-size: 36rpx;
      font-weight: 600;
      color: #ffffff;
      display: block;
      margin-bottom: 12rpx;
      text-shadow: 0 2rpx 4rpx rgba(0,0,0,0.1);
      
      &:first-letter {
        font-size: 28rpx;
        font-weight: normal;
        margin-right: 4rpx;
      }
      
      &::after {
        content: attr(data-unit);
        font-size: 24rpx;
        font-weight: normal;
        margin-left: 4rpx;
        opacity: 0.9;
      }
    }
    
    .label {
      position: relative;
      z-index: 2;
      font-size: 24rpx;
      color: rgba(255,255,255,0.9);
      display: block;
      font-weight: 400;
      letter-spacing: 1rpx;
      
      &::after {
        content: '';
        display: block;
        width: 20rpx;
        height: 3rpx;
        background: rgba(255,255,255,0.6);
        margin: 10rpx auto 0;
        border-radius: 2rpx;
      }
    }
  }
}

.section-wrapper {
  position: relative;
  z-index: 1;
  margin-top: 40rpx;
  background: #ffffff;
  border-radius: 20rpx;
  padding: 30rpx;
  box-shadow: 0 4rpx 16rpx rgba(0,0,0,0.05);
}

.section-title {
  font-size: 32rpx;
  font-weight: 600;
  color: #333;
  margin-bottom: 30rpx;
  display: flex;
  align-items: center;
  
  &::before {
    content: '';
    width: 6rpx;
    height: 28rpx;
    background: linear-gradient(180deg, #3c9cff 0%, #54a6ff 100%);
    border-radius: 3rpx;
    margin-right: 16rpx;
  }
}

.action-buttons {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20rpx;
  
  .action-btn {
    position: relative;
    display: flex;
    align-items: center;
    padding: 30rpx;
    background: #f8f9fc;
    border-radius: 16rpx;
    transition: all 0.3s ease;
    
    &:active {
      transform: translateY(2rpx);
      background: #f0f2f8;
    }
    
    .btn-icon {
      width: 80rpx;
      height: 80rpx;
      display: flex;
      align-items: center;
      justify-content: center;
      background: rgba(60,156,255,0.1);
      border-radius: 50%;
      margin-right: 20rpx;
      
      .iconfont {
        font-size: 40rpx;
        color: #3c9cff;
      }
    }
    
    .btn-text {
      font-size: 28rpx;
      color: #333;
      font-weight: 500;
    }
    
    .badge {
      position: absolute;
      top: 20rpx;
      right: 20rpx;
      min-width: 32rpx;
      height: 32rpx;
      padding: 0 10rpx;
      background: #ff3c3c;
      border-radius: 16rpx;
      color: #fff;
      font-size: 20rpx;
      display: flex;
      align-items: center;
      justify-content: center;
      transform: scale(0.9);
      transform-origin: right top;
      
      &:not(:empty) {
        min-width: 40rpx;
      }
    }
  }
}

.chart-section {
  .chart-tabs {
    display: flex;
    margin-bottom: 20rpx;
    
    .tab-item {
      padding: 10rpx 30rpx;
      font-size: 26rpx;
      color: #666;
      position: relative;
      transition: all 0.3s ease;
      
      &.active {
        color: #3c9cff;
        font-weight: 500;
        
        &::after {
          content: '';
          position: absolute;
          bottom: -4rpx;
          left: 50%;
          transform: translateX(-50%);
          width: 40rpx;
          height: 4rpx;
          background: linear-gradient(90deg, #3c9cff 0%, #54a6ff 100%);
          border-radius: 2rpx;
        }
      }
    }
  }
  
  .trend-chart {
    height: 400rpx;
    width: 100%;
  }
}
